// 字符串为 A[0..n-1]，返回字符串的最大表示位置
int maxPositions(int n,char A[]) {
	if (n==1)
		return 0;
	for (int v=0;v<n;v++)
		A[v+n]=A[v];
	int b=0;
	for (int i=0,j=1;j<n;) {
		int u,v,count=0;
		for (u=i,v=j;count<n && A[u]==A[v];u++,v++,count++);
		if (A[u]>A[v])
			j=v+1;
		else {
			b=j;
			i=u+1;
			if (i>j) swap(i,j);
			if (i==j)j++;
		}
	}
	return b;
}
